03. Classic vs Modern Approach

Classic vs. Modern Approach to Perception in Robotics

An example of semantic segmentation (per-pixel object classification) in the [Cityscapes Dataset](https://www.cityscapes-dataset.com/).  See [Cordts et al., 2016](https://www.cityscapes-dataset.com/wordpress/wp-content/papercite-data/pdf/cordts2016cityscapes.pdf) for details.   Semantic segmentation using neural networks is an example of a modern approach to perception and you'll get a chance to implement it later on in the program.

An example of semantic segmentation (per-pixel object classification) in the Cityscapes Dataset. See Cordts et al., 2016 for details. Semantic segmentation using neural networks is an example of a modern approach to perception and you'll get a chance to implement it later on in the program.

Modern perception algorithms are extremely powerful and, in many cases, can outperform our own human capabilities when it comes to understanding the surrounding environment or classifying objects in a scene. However, many of the most powerful methods also require a powerful computer to run in real time.

In robotics, we face real world limitations when it comes to things like power consumption, weight, volume and other physical parameters of the system. These limitations imply that onboard computational power is also limited by the physical constraints of any given robotics platform.

[NVIDIA Jetson TX2](https://www.nvidia.com/en-us/autonomous-machines/embedded-systems-dev-kits-modules/) is an example of the cutting edge compute hardware driving onboard processing in robotics to a new level; it will be introduced in Term 2.

NVIDIA Jetson TX2 is an example of the cutting edge compute hardware driving onboard processing in robotics to a new level; it will be introduced in Term 2.

These days, powerful computers are getting smaller, lighter and more efficient in terms of power consumption, which means the onboard computing capabilities of robots is getting better all the time. Still there are limitations, which mean that tradeoffs need to be made when it comes to choosing which perception algorithms to run on your robotics platform.

Methods Used in This Program

In the first project for this program, you applied some traditional computer vision techniques like color thresholding and perspective transforms. In the lessons that follow we'll be moving into three dimensions and exploring some 3D perception techniques that could also be considered "classical" or traditional techniques like RANSAC model fitting.

Point cloud data of the 3D environment you'll be working with in the project.  Color corresponds to height in this case.

Point cloud data of the 3D environment you'll be working with in the project. Color corresponds to height in this case.

After that, we'll explore machine learning techniques known as "clustering" to provide you with even more powerful tools for perception and object segmentation. In the project at the end of these perception lessons, you'll apply a combination of traditional and modern techniques to the task of locating an object in a cluttered 3D environment.